home *** CD-ROM | disk | FTP | other *** search
/ Aminet 40 / Aminet 40 (2000)(Schatztruhe)[!][Dec 2000].iso / Aminet / util / cdity / MRQ.lha / MRQ / Source / mrq.h < prev    next >
C/C++ Source or Header  |  2000-10-16  |  3KB  |  127 lines

  1. /*
  2. ** mrq.h
  3. ** Main data structure and definitions file for MRQ
  4. **
  5. ** ©1997-2000 by Matthias.Bethke <Matthias.Bethke@gmx.net>
  6. ** You are free to modify this source or use parts of it in your
  7. ** own programs as long as they are distributed as freeware.
  8. */
  9.  
  10. /* $Id: mrq.h 1.2 2000/03/30 23:18:34 msbethke Exp msbethke $
  11. **
  12. ** $Log: mrq.h $
  13. ** Revision 1.2  2000/03/30 23:18:34  msbethke
  14. ** Changed NewImage.mcc -> Guigfx.mcc
  15. **
  16. ** Revision 1.1  2000/01/25 16:44:57  msbethke
  17. ** Initial revision
  18. **
  19. */
  20.  
  21. #define MRQWINDOWTAG_REQMESSAGE (0x8000ffff)
  22. #define MAXBUTTONS 25
  23.  
  24. /* set by different patches */
  25. #define CALLER_EASYREQUESTARGS 1
  26. #define CALLER_RTEZREQUESTA 2
  27.  
  28. #define MRQMF_NORETURNKEY (1<<0)
  29. #define MRQMF_CENTERTEXT  (1<<1)
  30.  
  31. /* Message sent to main task when a requester should open */
  32. struct MRQReqMessage
  33. {
  34.     struct Message mrm_Message;
  35.     struct EasyStruct *mrm_Easy;
  36.     struct Window *mrm_ParentWin;
  37.     APTR mrm_ArgList;
  38.     APTR mrm_WindowObject;
  39.     struct MUI_EventHandlerNode *mrm_EventHandler;
  40.     struct Screen *mrm_ReqScreen;
  41.     STRPTR mrm_ARexxPort;
  42.     STRPTR mrm_ARexxCmd;
  43.     struct MRQImage *mrm_ReqImage;
  44.     LONG mrm_RCode;
  45.     ULONG mrm_Flags;
  46.     STRPTR mrm_CallingProgram;
  47.     UWORD    mrm_CalledFrom;
  48.     BOOL    mrm_FatalError;
  49.     UBYTE mrm_Underscore;
  50.     UBYTE mrm_DefaultAnswer;
  51. };
  52.  
  53. /* ToolType structure - config data */
  54. struct TTVars
  55. {
  56.     LONG MousedReq;
  57.     LONG SameWidthButtons;
  58.     LONG FrontmostScreen;
  59.     LONG Quality;
  60.     LONG SingleFrame;
  61.     LONG Transparency;
  62.     LONG Sizeable;
  63.     LONG Centered;
  64.     LONG NoRTPatch;
  65.     LONG DefaultIcon;
  66.     LONG SingleIsOK;
  67.     STRPTR Debug;
  68.     STRPTR IB_Yes;
  69.     STRPTR IB_No;
  70.     STRPTR IB_Cancel;
  71.     STRPTR IButtonsByText;
  72.     STRPTR DefImageDir;
  73.     STRPTR ConfigName;
  74.     STRPTR AfterPatch;
  75.     STRPTR AvoidTasks;
  76. };
  77.  
  78. /* Used for ReadArgs() on shell invocation */
  79. struct MRQShellArguments
  80. {
  81.     STRPTR ConfigName;
  82.     STRPTR DefImageDir;
  83.     STRPTR IB_Yes;
  84.     STRPTR IB_No;
  85.     STRPTR IB_Cancel;
  86.     STRPTR IButtonsByText;
  87.     STRPTR Quality;
  88.     STRPTR AvoidTasks;
  89.     LONG DefaultIcon;
  90.     LONG MousedReq;
  91.     LONG SameWidth;
  92.     LONG FrontScreen;
  93.     LONG SingleFrame;
  94.     LONG Transparency;
  95.     LONG Sizeable;
  96.     LONG Centered;
  97.     LONG NoRTPatch;
  98.     LONG SingleIsOK;
  99.     STRPTR AfterPatch;
  100.     STRPTR Debug;
  101. };
  102.  
  103. /* globals - initialized in mrq.c */
  104. extern APTR OldEasyRequestArgs, OldrtEZRequestA, Application;
  105. extern struct IClass *MRQWindowClass, *GuigfxClass;
  106. extern UBYTE ProgName[];
  107. extern struct MRQConfig *Config;
  108. extern struct TTVars ttVars;
  109. extern struct DosLibrary *DOSBase;
  110. extern struct IntuitionBase *IntuitionBase;
  111. extern struct GfxBase *GfxBase;
  112. extern struct Library *MUIMasterBase, *IconBase, *RexxSysBase, *DataTypesBase, *UtilityBase;
  113. extern struct ExecBase *SysBase;
  114. extern struct ReqToolsBase *ReqToolsBase;
  115. extern struct MsgPort *MainPort;
  116. extern LONG AppActive;
  117.  
  118. /* some error messages for debug output */
  119. #define MRQERROR_NOMEMORY       "out of memory"
  120. #define MRQERROR_BADPATTERN     "pattern parse error"
  121. #define MRQERROR_NOCONFIGFILE   "configfile not found"
  122. #define MRQERROR_LOADIMAGE      "can't load an image"
  123. #define MRQERROR_CONFIGFORMAT   "error in config file"
  124.  
  125. /* protos */
  126. void prdebug(char*,...);
  127.